package com.triple.triplerpc.server;

import io.vertx.core.Vertx;

public class VertxHttpServer implements HttpServer {

    /**
     * 启动服务器
     *
     * @param port
     */
    @Override
    public void doStart(int port) {
        // 创建 Vert.x 实例
        Vertx vertx = Vertx.vertx();
        // 创建 HTTP 服务器
        io.vertx.core.http.HttpServer server = vertx.createHttpServer();

        // 处理接收到的请求
        server.requestHandler(new HttpServerHandler());

        // 启动 HTTP 服务器 并监听指定端口
        server.listen(port, result -> {
            // 启动 HTTP 服务器是否成功
            if (result.succeeded()) {
                System.out.println("启动 HTTP 服务器 成功: Server is now listening on port - " + port);
            } else {
                System.err.println("启动 HTTP 服务器 失败: Failed to start server - " + result.cause());
            }
        });
    }

}
